Convolvers are used in numerous signal processing apparatus, such as communication apparatus. Convolvers perform the convolution operation on a pair of signals. Filters are a sub-group of convolvers which perform the convolution operation between an input signal and an impulse response of the filter. Correlators are another sub-group of convolvers in which the convolution operation is performed between a first input signal and the time inverse of a second input signal. For simplicity of the following description it is assumed that one of the convoluted signals has a finite duration.
Continuous time analog filters in which both the input and output are continuous analog signals, have been in use for a long time. Continuous time analog filters are actually analog convolvers which perform convolution between a continuous-time analog input and an impulse response of the filter. It is known to synthesize the filter's impulse response under certain constraints. Analog filters, however, suffer from inaccuracies due to the inaccuracies of electronic parts (e.g., resistors and capacitors) forming the analog convolvers. In addition, programmable continuous analog filters are substantially unfeasible to produce.
FIG. 1 is a schematic illustration of a discrete time convolver 28, known in the art. A first input signal x(t) is sampled at a rate 1/T by a switch 26, forming samples x(n). The samples x(n) are passed consecutively through a succession of delay units 20. The delayed samples x(n) from each delay unit 20 are multiplied at multipliers 22 by samples h(n) of a second input signal h(t) and the products of the multiplication are summed by an adder 24 which provides convoluted samples y(n) of an output signal y(t).
In some convolvers, delay units 20 are implemented using charge coupled devices (CCDs), samples x(n) and h(n) have analog (continuous) values and multipliers 22 are analog multipliers. CCD delay units and analog multipliers are generally small, simple, fast and consume little power. However, the samples running through the CCD delay units, suffer from degradation which limits the number of delay units which may be used in cascade and/or reduces the accuracy of the convolver.
To overcome the degradation, an implementation in which the samples x(n) are held in cyclic buffers and the h(j) samples are slid past the cyclic buffers to perform the multiplication, has been suggested. There also has been described a time discrete programmable analog-value filter which performs the addition and multiplication operations of the filter using capacitors.
In other convolvers, delay units 20 are implemented using digital registers which carry discrete values. The samples in these convolvers do not suffer from degradation, but the delay units have relatively high power consumption.
All the above discrete time convolvers receive sampled inputs x(n) and h(j). In order not to loose information, the continuous signals x(t) and h(t) must be sampled at a rate which is at least twice the respective signal's bandwidth. In many cases this requires very high sampling rates as h(t) is usually finite in time and has an infinite bandwidth. Also the high sampling rate requires in many cases using many delay units 20. In addition, an anti-aliasing filter is required in order to attenuate the aliasing frequencies created by the sampling.